protoknow(reg,u,cm(i_rev,[u],[idp])).
protoknow(reg,u,pri((sum,all),[cm(d,[u],dot)])).
protoknow(reg,u,cmr(n_c_1,dot,bot)).
protoknow(reg,u,cmr(n_c_2,[u,idp],[])).
protoknow(reg,u,cmr(n_c_3,dot,bot)).
protoknow(reg,u,cmr(n_c_7,dot,bot)).

protoknow(reg,idp,pri((sum,all),[cm(d,[u],dot)])).
protoknow(reg,idp,cm(i_rev,[u],[idp])).
protoknow(reg,idp,cmr(n_c_4,dot,bot)).
protoknow(reg,idp,cmr(n_c_5,[u,idp],[])).
protoknow(reg,idp,cmr(n_c_6,dot,bot)).

protoknow(reg,A,pri(rc,[cmr(i,[u],[]),cmr(n_c_1,dot,bot)])) :- member(A,[u,idp]).

protoknow(reg,A,pri(icred,[cmr(i,[u],[]),cmr(kM,[idp],[]),pri(lst,[cm(i_rev,[u],[idp]),pri((sum,all),[cm(d,[u],dot)])]),cmr(n_c_1,dot,bot),cmr(n_c_2,[u,idp],[]),cmr(n_c_3,dot,bot),cmr(n_c_4,dot,bot),cmr(n_c_5,[u,idp],[]),cmr(n_c_6,dot,bot),cmr(n_c_7,dot,bot)])) :- member(A,[u,idp]).

protoknow(regp,u,cm(i_rev,[u],[idp])).
protoknow(regp,u,pri((sum,all),[cm(d,[u],dot)])).
protoknow(regp,idp,pri((sum,all),[cm(d,[u],dot)])).
protoknow(regp,u,cmr(n_c_1,dot,bot)).
protoknow(regp,u,cmr(n_c_2,[u,idp],[])).
protoknow(regp,u,cmr(n_c_3,dot,bot)).
protoknow(regp,u,cmr(n_c_7,dot,bot)).
protoknow(regp,idp,cm(i_rev,[u],[idp])).
protoknow(regp,idp,cmr(n_c_4,dot,bot)).
protoknow(regp,idp,cmr(n_c_5,[u,idp],[])).
protoknow(regp,idp,cmr(n_c_6,dot,bot)).

protoknow(regp,A,pri(rc,[cmr(i,[u],[]),cmr(n_c_1,dot,bot)])) :- member(A,[u,idp]).

protoknow(regp,A,pri(icred,[cmr(i,[u],[]),cmr(kM,[idp],[]),pri((sum,all),[cm(d,[u],dot)]),cmr(n_c_1,dot,bot),cmr(n_c_2,[u,idp],[]),cmr(n_c_3,dot,bot),cmr(n_c_4,dot,bot),cmr(n_c_5,[u,idp],[]),cmr(n_c_6,dot,bot),cmr(n_c_7,dot,bot)])) :- member(A,[u,idp]).

protoknow(spr,sp,cmr(n_1_b,dot,bot)).
protoknow(spr,sp,cmr(n_2_b,dot,bot)).
protoknow(spr,sp,cm(td,[u],dot)).

protoknow(spr,u,cmr(n,dot,bot)).
protoknow(spr,u,cm(cnd,dot,dot)).
protoknow(spr,u,pri((sum,pd1),[cmr(n_1_i_p,dot,bot)])).
protoknow(spr,u,pri((sum,nd1),[cmr(n_1_i_n,dot,bot)])).
protoknow(spr,u,cmr(n_1_r,dot,bot)).
protoknow(spr,u,cmr(n_1_v,dot,bot)).
protoknow(spr,u,cmr(n_1_a,dot,bot)).
protoknow(spr,u,pri((sum,pd2),[cmr(n_2_i_p,dot,bot)])).
protoknow(spr,u,pri((sum,nd2),[cmr(n_2_i_n,dot,bot)])).
protoknow(spr,u,cmr(n_2_a,dot,bot)).

protoknow(spr,A,pri(lst,[pri(rc,[cmr(i,[u],[]),cmr(n,dot,bot)]),pri(rc,[cm(i_rev,[u],[idp1]),cmr(n_1_r,dot,bot)]),pri((sum,pd1),[pri(rc,[cm(d,[u],dot),cmr(n_1_i_p,dot,bot)])]),pri((sum,nd1),[pri(rc,[cm(d,[u],dot),cmr(n_1_i_n,dot,bot)])]),pri((sum,d1),[cm(d,[u],dot)]),pri((sum,pr1),[cm(d,[u],dot)]),cm(cnd,dot,dot),pri(pk,[cmr(kM,[ttp],[])]),pri(el,[pri(pk,[cmr(kM,[ttp],[])]),pri(lst,[cm(i_rev,[u],[idp1]),cmr(n_1_v,dot,bot)]),cm(cnd,dot,dot)])])) :- member(A,[u,sp]).
protoknow(spr,A,pri(zk,[pri(lst,[pri(cred,[cmr(i,[u],[]),cmr(kM,[idp1],[]),pri(lst,[cm(i_rev,[u],[idp1]),pri((sum,a1),[cm(d,[u],dot)])]),cmr(n_c_2,[u,idp1],[]),cmr(n_c_5,[u,idp1],[])]),cmr(i,[u],[]),cm(i_rev,[u],[idp1]),pri((sum,a1),[cm(d,[u],dot)]),cmr(n,dot,bot),cmr(n_1_r,dot,bot),pri((sum,pd1),[cmr(n_1_i_p,dot,bot)]),pri((sum,nd1),[cmr(n_1_i_n,dot,bot)])]),pri(lst,[pri(rc,[cmr(i,[u],[]),cmr(n,dot,bot)]),pri(rc,[cm(i_rev,[u],[idp1]),cmr(n_1_r,dot,bot)]),pri((sum,pd1),[pri(rc,[cm(d,[u],dot),cmr(n_1_i_p,dot,bot)])]),pri((sum,nd1),[pri(rc,[cm(d,[u],dot),cmr(n_1_i_n,dot,bot)])]),pri((sum,d1),[cm(d,[u],dot)]),pri(pk,[cmr(kM,[idp1],[])]),pri(pk,[cmr(kM,[ttp],[])]),pri(el,[pri(pk,[cmr(kM,[ttp],[])]),pri(lst,[cm(i_rev,[u],[idp1]),cmr(n_1_v,dot,bot)]),cm(cnd,dot,dot)]),pri((sum,pr1),[cm(d,[u],dot)])]),cmr(n_1_a,dot,bot),cmr(n_1_b,dot,bot)])) :- member(A,[u,sp]).
protoknow(spr,A,pri(lst,[pri(rc,[cmr(i,[u],[]),cmr(n,dot,bot)]),pri((sum,pd2),[pri(rc,[cm(d,[u],dot),cmr(n_2_i_p,dot,bot)])]),pri((sum,nd2),[pri(rc,[cm(d,[u],dot),cmr(n_2_i_n,dot,bot)])]),pri((sum,d2),[cm(d,[u],dot)]),pri((sum,pr2),[cm(d,[u],dot)]),cm(cnd,dot,dot)])) :- member(A,[u,sp]).
protoknow(spr,A,pri(zk,[pri(lst,[pri(cred,[cmr(i,[u],[]),cmr(kM,[idp2],[]),pri((sum,a2),[cm(d,[u],dot)]),cmr(n_c_2,[u,idp2],[]),cmr(n_c_5,[u,idp2],[])]),cmr(i,[u],[]),pri((sum,a2),[cm(d,[u],dot)]),cmr(n,dot,bot),pri((sum,pd2),[cmr(n_2_i_p,dot,bot)]),pri((sum,nd2),[cmr(n_2_i_n,dot,bot)])]),pri(lst,[pri(rc,[cmr(i,[u],[]),cmr(n,dot,bot)]),pri((sum,pd2),[pri(rc,[cm(d,[u],dot),cmr(n_2_i_p,dot,bot)])]),pri((sum,nd2),[pri(rc,[cm(d,[u],dot),cmr(n_2_i_n,dot,bot)])]),pri((sum,d2),[cm(d,[u],dot)]),pri(pk,[cmr(kM,[idp2],[])]),pri((sum,pr2),[cm(d,[u],dot)])]),cmr(n_2_a,dot,bot),cmr(n_2_b,dot,bot)])) :- member(A,[u,sp]).
